package com.wei.android.lib.fingerprintidentify
import androidx.biometric.BiometricPrompt

interface Authenticator {

    fun authenticate(authenticateListener: AuthenticateListener)

    fun reAuthenticate()

    fun cancelAuthenticate()

    /**
     * 验证器验证过程中的回调。请注意，该回调仅对 人脸/指纹/自定义验证器有效。
     * 系统的图案（Pattern）解锁没有回调
     */
    interface AuthenticateListener {
        fun onSuccess()

        /**
         * 失败，即指纹校验不通过
         */
        fun onFailed()

        /**
         * 指纹校验中出现错误，比如失败太多次被锁定，或者永久锁定
         * [code] 错误码，和 [BiometricPrompt]中定义的的错误码保持一致
         */
        fun onError(code: Int, errMsg: CharSequence)

        fun onHelp(code:Int,msg:String){}

        fun onCancelled()
    }
}